package com.bsoft.gol.editor.service;

//import com.com.bsoft.gol.editor.editor.com.bsoft.gol.editor.model.EditorQuestionnaireTitle;
//import com.com.bsoft.gol.editor.editor.com.bsoft.gol.editor.model.EditorTitleOption;
//import com.com.bsoft.gol.editor.editor.com.bsoft.gol.editor.model.com.bsoft.gol.editor.editor.request.EditorQuestionnaireTitleReq;
//import com.com.bsoft.gol.editor.editor.com.bsoft.gol.editor.model.com.bsoft.gol.editor.editor.response.EditorQuestionnaireDetailRes;
//import com.com.bsoft.gol.editor.editor.com.bsoft.gol.editor.model.request.GetQuestionnaireDetailRequest;

import ctd.controller.exception.ControllerException;
import hcn.util.BaseResponse;
import com.bsoft.gol.editor.editor.EditorQuestionnaireTitle;
import com.bsoft.gol.editor.editor.EditorTitleOption;
import com.bsoft.gol.editor.editor.request.CollectTitleRequest;
import com.bsoft.gol.editor.editor.request.GetQuestionnaireDetailRequest;
import com.bsoft.gol.editor.editor.request.QueryCollectionListRequest;
import com.bsoft.gol.editor.editor.response.EditorQuestionnaireDetailRes;
import com.bsoft.gol.editor.editor.response.QueryCollectionListResponse;

import java.util.List;

/**
 * 表单题目表
 */
public interface EditorQuestionnaireTitleApi {
//
    EditorQuestionnaireTitle add(EditorQuestionnaireTitle editorQuestionnaireTitle) throws ControllerException;
//
    void update(EditorQuestionnaireTitle editorQuestionnaireTitle);
//
    void delete(EditorQuestionnaireTitle editorQuestionnaireTitle);
//
    EditorQuestionnaireTitle copyTitle(EditorQuestionnaireTitle editorQuestionnaireTitle);
//
    void updateTitleNum(EditorQuestionnaireTitle editorQuestionnaireTitle);
//
    EditorTitleOption addOption(EditorTitleOption editorTitleOption);
//
    void updateOption(EditorTitleOption editorTitleOption);

    void updateOptionNum(EditorTitleOption editorTitleOption);

    //
    void deleteOption(EditorTitleOption editorTitleOption);
//
//    void updateOptionNum(EditorTitleOption editorTitleOption);
//
    EditorQuestionnaireTitle selectTitleByPrimaryKey(String titleId);
//
    EditorQuestionnaireDetailRes getQuestionnaireDetail(GetQuestionnaireDetailRequest getQuestionnaireDetailRequest);

    /*获取题目列表*/
    BaseResponse queryQuestionnaireTitleList(EditorQuestionnaireTitle queryDocQuestionnaireListReq);

    /*获取选项列表*/
    BaseResponse queryQuestionnaireOptionList(EditorTitleOption queryDocQuestionnaireListReq);

    //查询问卷题目收藏列表
    List<QueryCollectionListResponse> queryCollectionList(QueryCollectionListRequest req);

    //收藏问卷题目
    void collectTitle(CollectTitleRequest req) throws ControllerException;

    //删除收藏的问卷题目
    void cancelCollection(CollectTitleRequest req);

    //通过题目id获取题目选项列表
    List<EditorTitleOption> queryEditorTitleOptionList(String titleId);


//
}